package fr.uniscol.siecle.model;

import java.util.ArrayList;
import java.util.List;

public class FichierExportSTSWeb extends FichierExportSiecle{

	private UAJ uaj = null;
	
	private List<Civilite> civilites = null;
	
	private List<Enseignant> enseignants = null;
	
	private List<Division> divisions = null;
	
	private List<Groupe> groupes = null;
	
	private List<Service> services = null;
	
	private List<Matiere> matieres = null;
	
	private List<MEF> mefs = null;
	
	private List<Programme> programmes = null;
	
	private List<ModaliteCours> modalites = null;
	 
	public FichierExportSTSWeb(){
	}

	public UAJ getUaj() {
		return uaj;
	}

	public void setUaj(UAJ uaj) {
		this.uaj = uaj;
	}

	public List<Enseignant> getEnseignants() {
		if(enseignants == null){
			enseignants = new ArrayList<Enseignant>();
		}
		return enseignants;
	}

	public void setEnseignants(List<Enseignant> enseignants) {
		this.enseignants = enseignants;
	}
	
	public Enseignant getEnseignant(String code){
		for(Enseignant e : getEnseignants()){
			if(e.getId().equals(code)){
				return e;
			}
		}
		return null;
	}

	public List<Service> getServices() {
		if(services == null){
			services = new ArrayList<Service>();
		}
		return services;
	}

	public List<Division> getDivisions() {
		if(divisions == null){
			divisions = new ArrayList<Division>();
		}
		return divisions;
	}

	public Division getDivision(String code){
		for(Division d : getDivisions()){
			if(d.getCode().equals(code)){
				return d;
			}
		}
		return null;
	}
	
	public List<Civilite> getCivilites() {
		if(civilites == null){
			civilites = new ArrayList<Civilite>();
		}
		return civilites;
	}

	public void setCivilites(List<Civilite> civilites) {
		this.civilites = civilites;
	}
	
	public Civilite getCivilite(String code){
		for(Civilite c : getCivilites()){
			if(c.getCode().equals(code)){
				return c;
			}
		}
		return null;
	}

	public void setDivisions(List<Division> divisions) {
		this.divisions = divisions;
	}

	public void setServices(List<Service> services) {
		this.services = services;
	}

	public List<Matiere> getMatieres() {
		if(matieres == null){
			matieres = new ArrayList<Matiere>();
		}
		return matieres;
	}

	public void setMatieres(List<Matiere> matieres) {
		this.matieres = matieres;
	}
	
	public Matiere getMatiere(String code){
		for(Matiere m : getMatieres()){
			if(m.getCode().equals(code)){
				return m;
			}
		}
		return null;
	}

	public List<MEF> getMefs() {
		if(mefs == null){
			mefs = new ArrayList<MEF>();
		}
		return mefs;
	}

	public void setMefs(List<MEF> mefs) {
		this.mefs = mefs;
	}
	
	public MEF getMEF(String code){
		for(MEF m : getMefs()){
			if(m.getCode().equals(code)){
				return m;
			}
		}
		return null;
	}

	public List<Programme> getProgrammes() {
		if(programmes == null){
			programmes = new ArrayList<Programme>();
		}
		return programmes;
	}

	public void setProgrammes(List<Programme> programmes) {
		this.programmes = programmes;
	}

	public List<ModaliteCours> getModalites() {
		if(modalites == null){
			modalites = new ArrayList<ModaliteCours>();
		}
		return modalites;
	}

	public void setModalites(List<ModaliteCours> modalites) {
		this.modalites = modalites;
	}
	
	public List<Groupe> getGroupes() {
		if(groupes == null){
			groupes = new ArrayList<Groupe>();
		}
		return groupes;
	}

	public void setGroupes(List<Groupe> groupes) {
		this.groupes = groupes;
	}

	public ModaliteCours getModalite(String code){
		for(ModaliteCours m : getModalites()){
			if(m.getCode().equals(code)){
				return m;
			}
		}
		return null;
	}
}
